/*!
 * \file GapEventConnectRej.h
 * \brief Event carrying message GapConnectRej
 */

#ifndef MGW_GAP_EVENT_CONNECT_REJ_H
#define MGW_GAP_EVENT_CONNECT_REJ_H

#include "EventData.h"
#include "GapGlobals.h"
#include "GAP.pb.h"

namespace tsc
{
namespace mgw
{

using GatewayApplicationPart::GapConnectRej;

/**
 * Serving Gateway rejected connection with this MGW.
 */
class GapEventConnectRej : public common::EventData
{
public:

    GapEventConnectRej(GapConnectRej& connRej) :
		EventData(GAP_CONNECT_REJ),
		mCause(connRej.cause())
	{
        // nothing
	}

	virtual ~GapEventConnectRej()
	{

	}

	GatewayApplicationPart::Cause getCause() const
	{
		return mCause;
	}

private:
	GatewayApplicationPart::Cause mCause;
};

} // namespace mgw
} // namespace tsc

#endif // MGW_GAP_EVENT_CONNECT_REJ_H
